Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 28.02.2014, 06:52
Интересующийся
Отправить личное сообщение для Mawr Посмотреть профиль Найти все сообщения от Mawr
 
Регистрация: 28.02.2012
Сообщений: 26

отправка изображения php скрипту
доброго времени суток,
есть index.html с полями для ввода информации, эта информация отправляется скрипту getinfo.php таким образом
var zapros='getinfo.php?operation=add&name='+document.getElementById('name').value;
makeRequest(zapros, ball);


function makeRequest(PHPfile, Success) // функция Ajax запроса
{
   var http_request = false; // переменная для хранения XMLHttpRequest объекта

   if (window.XMLHttpRequest)
   {
      http_request = new XMLHttpRequest(); // Mozilla, Safari, ...
      if (http_request.overrideMimeType)
      {
         http_request.overrideMimeType('text/html');
         // Тип возвращаемого контента
      }
   }
   else if (window.ActiveXObject)
   {
      try
      {
         http_request = new ActiveXObject("Msxml2.XMLHTTP"); // IE
      } catch (e) {
         try
         {
            http_request = new ActiveXObject("Microsoft.XMLHTTP"); // Opera
         } catch (e) {}
      }
   }

   if (!http_request) // Если объект не был создан
   {
      alert('Не вышло :( Невозможно создать экземпляр класса XMLHTTP ');
      return false;
   }
   //присваиваем обработчику функцию для обработки возвращенного контента
   http_request.onreadystatechange = function() { //функция - обёртка

   
    if (http_request.readyState == 4) //Если состояние запроса = "Выполнено"
   {
      if (http_request.status == 200) //Если всё прошло удачно
      {
	  
			 Success(http_request);	
			 
      } else {
         alert('С запросом возникла проблема.');
      }
   }  
   
   }; 
   http_request.open('GET', PHPfile, true); //метод запроса, URL, асинхронность
   http_request.send(null);
}

function ball(http_request)
{
   document.getElementById('res').innerHTML = http_request.responseText;
}

вопрос: можно ли как то вместе с текстом также отправить файл(изображение), которое пользователь выберет на своем компьютере?
Ответить с цитированием
  #2 (permalink)  
Старый 28.02.2014, 07:59
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

У вас в коде вижу window.ActiveXObject. Судя по этому коду вы ориентируетесь на поддержку IE6. В нем нельзя через ajax-запрос передать файл. Так что нет, кроссбраузерно нельзя.
__________________
В личку только с интересными предложениями
Ответить с цитированием
  #3 (permalink)  
Старый 28.02.2014, 08:00
Интересующийся
Отправить личное сообщение для Mawr Посмотреть профиль Найти все сообщения от Mawr
 
Регистрация: 28.02.2012
Сообщений: 26

Сообщение от danik.js Посмотреть сообщение
У вас в коде вижу window.ActiveXObject. Судя по этому коду вы ориентируетесь на поддержку IE6. В нем нельзя через ajax-запрос передать файл. Так что нет, кроссбраузерно нельзя.
полной кроссбраузерности не требуется, если будет работать на основных браузерах - достаточно и того)
Ответить с цитированием
  #4 (permalink)  
Старый 28.02.2014, 08:01
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

Сообщение от Mawr
// Mozilla, Safari, ...
А че такой скудный список? Так-то Mozilla, Safari, Google Chrome, Opera, Internet Explorer, [любой другой не древний браузер] ...

А передать файл можно в этих браузерах через XMLHttpRequest 2 и FormData. Гугл в помощь. Впринципе для IE8 можно сделать fallback на фрейме. Например плагин для jQuery jquery.form.js так умеет.
__________________
В личку только с интересными предложениями
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Отправка сообщения другому скрипту natureproj Общие вопросы Javascript 0 14.10.2013 02:50
Скачивание, и последующая отправка изображения Ajax Vlad_IT AJAX и COMET 4 03.09.2013 01:29
Отправка статистика с помощью javascript php скрипту. allanmiln AJAX и COMET 2 27.05.2013 16:48
Ребят как передать значение из php в src название изображения! SpiritDark Элементы интерфейса 4 14.05.2012 14:02
Отправка изображения из canvas на сервер m-mikle Общие вопросы Javascript 1 06.01.2011 20:45